Predictive data analysis using image representations of categorical and scalar feature data

ABSTRACT

There is a need for more effective and efficient predictive data analysis solutions and/or more effective and efficient solutions for generating image representations of categorical/scalar data. Various embodiments of the present invention address one or more of the noted technical challenges. In one example, a method comprises receiving the one or more categorical input features; generating an image representation of the one or more categorical input features, wherein the image representation comprises image region values each associated with a categorical input feature, and further wherein each image region value of the one or more image region values is determined based at least in part on the corresponding categorical input feature associated with the image region value; and processing the image representation using an image-based machine learning model to generate the image-based predictions.

BACKGROUND

The present invention addresses technical challenges related toperforming predictive data analysis in a computationally efficient andpredictively reliable manner. Existing predictive data analysis systemsare ill-suited to efficiently and reliably performing predictive dataanalysis in various domains, such as domains that are associated withhigh-dimensional categorical feature spaces with a high degree ofcardinality.

BRIEF SUMMARY

In general, embodiments of the present invention provide methods,apparatus, systems, computing devices, computing entities, and/or thelike for predictive data analysis of categorical data using imagetransformations. Certain embodiments utilize systems, methods, andcomputer program products that perform predictive analysis of featuresusing image transformations (e.g., reserved-spatial-location imagetransformations, reserved-pattern-based image transformations,coordinate-based reserved-spatial-location image transformations,feature-based reserved-spatial-location image transformations, andscalar reserved-spatial-location image transformation).

In accordance with one aspect, a method is provided. In one embodiment,the method comprises: determining, for each categorical input feature ofthe one or more categorical input features, a corresponding coordinategrouping of a plurality of coordinate groupings; generating, for eachcoordinate grouping of the plurality of coordinate groupings, acoordinate channel; and generating the image representation based oneach coordinate channel.

In accordance with another aspect, a computer program product isprovided. The computer program product may comprise at least onecomputer-readable storage medium having computer-readable program codeportions stored therein, the computer-readable program code portionscomprising executable portions configured to: determine, for eachcategorical input feature of the one or more categorical input features,a corresponding coordinate grouping of a plurality of coordinategroupings; generate, for each coordinate grouping of the plurality ofcoordinate groupings, a coordinate channel; and generate the imagerepresentation based on each coordinate channel.

In accordance with yet another aspect, an apparatus comprising at leastone processor and at least one memory including computer program code isprovided. In one embodiment, the at least one memory and the computerprogram code may be configured to, with the processor, cause theapparatus to: determine, for each categorical input feature of the oneor more categorical input features, a corresponding coordinate groupingof a plurality of coordinate groupings; generate, for each coordinategrouping of the plurality of coordinate groupings, a coordinate channel;and generate the image representation based on each coordinate channel.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described the invention in general terms, reference will nowbe made to the accompanying drawings, which are not necessarily drawn toscale, and wherein:

FIG. 1 provides an exemplary overview of an architecture that can beused to practice embodiments of the present invention.

FIG. 2 provides an example predictive data analysis computing entity inaccordance with some embodiments discussed herein.

FIG. 3 provides an example external computing entity in accordance withsome embodiments discussed herein.

FIG. 4 is a flowchart diagram of an example process for performingimage-based predictive data analysis in accordance with some embodimentsdiscussed herein.

FIG. 5 is a flowchart diagram of an example process for performingreserved-spatial-location image transformation in accordance with someembodiments discussed herein.

FIG. 6 provides an operational example of a reserved-spatial-locationdivision of an image space into various image regions in accordance withsome embodiments discussed herein.

FIG. 7 provides an operational example of a reserved-spatial-locationimage in accordance with some embodiments discussed herein.

FIG. 8 is a flowchart diagram of an example process for performingcoordinate-based reserved-spatial-location image transformation inaccordance with some embodiments discussed herein.

FIGS. 9A-9C provide operational examples of color-based channels inaccordance with some embodiments discussed herein.

FIG. 10 provides an operational example of generating a coordinate-basedreserved-spatial-location image in accordance with some embodimentsdiscussed herein.

FIG. 11 is a flowchart diagram of an example process for performingreserved-pattern-based image transformation in accordance with someembodiments discussed herein.

FIG. 12 provides an operational example of a reserved-pattern image inaccordance with some embodiments discussed herein.

FIG. 13 is a flowchart diagram of an example process for performingfeature-based reserved-spatial-location image transformation inaccordance with some embodiments discussed herein.

FIGS. 14A-14F provide operational examples of feature-based channels inaccordance with some embodiments discussed herein.

FIG. 15 provides an operational example of a set of feature-basedchannels for a set of categorical input features in accordance with someembodiments discussed herein.

FIG. 16 provides an operational example of a dimension-size comparisonbetween an example reserved-spatial-location image for a set ofthe-categorical input features and a set of feature-based channels forthe set of categorical input features in accordance with someembodiments discussed herein.

FIG. 17 is a flowchart diagram of an example process for performingfeature-based and coordinate-based reserved-spatial-location imagetransformation in accordance with some embodiments discussed herein.

FIG. 18 provides an operational example of generating afeature-channel-based and coordinate-based reserved-spatial-locationimage in accordance with some embodiments discussed herein.

FIG. 19 is a flowchart diagram of an example process for performingscalar reserved-spatial-location image transformation in accordance withsome embodiments discussed herein.

FIG. 20 provides an operational example of generating a scalarreserved-spatial-location image transformation in accordance with someembodiments discussed herein.

FIG. 21 is a block diagram of an example convolutional neural networkarchitecture in accordance with some embodiments discussed herein.

FIG. 22 is a block diagram of an example convolutional layer setarchitecture for a convolutional neural network in accordance with someembodiments discussed herein.

FIG. 23 is a block diagram of an example prediction layer setarchitecture for a convolutional neural network in accordance with someembodiments discussed herein.

FIG. 24 is a flowchart diagram of an example process for training amachine learning model for performing image-based predictive dataanalysis in accordance with some embodiments discussed herein.

DETAILED DESCRIPTION

Various embodiments of the present invention now will be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the inventions are shown. Indeed, theseinventions may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. The term “or” is used herein in both the alternativeand conjunctive sense, unless otherwise indicated. The terms“illustrative” and “exemplary” are used to be examples with noindication of quality level. Like numbers refer to like elementsthroughout. Moreover, while certain embodiments of the present inventionare described with reference to predictive data analysis, one ofordinary skill in the art will recognize that the disclosed concepts canbe used to perform other types of data analysis.

I. Overview

Discussed herein methods, apparatus, systems, computing devices,computing entities, and/or the like for predictive data analysis ofcategorical data using image transformations. As will be recognized,however, the disclosed concepts can be used to perform any type of dataanalysis, including non-predictive data analysis. Examples of predictivedata analysis include supervised machine learning analysis (e.g.,classification analysis and regression analysis) and unsupervisedmachine learning analysis (e.g., clustering analysis). Any embodimentsof the present invention described herein with reference to categoricaldata should be understood to refer to categorical data, scalar data, orboth.

Many existing predictive data analysis solutions are incapable ofefficiently and reliably performing predictive data analysis inprediction domains with complex input spaces. This is because manyexisting predictive data analysis solutions are developed for morecommon predictive data analysis tasks like image classification. Forexample, in the image classification domain, CNNs have accomplishedtremendous success in efficiently and accurately performing predictivedata analysis. Such solutions, however, are largely out of reach ofdevelopers in prediction domains with more complex input structures,such as prediction domains-with high-dimensional categorical featurespaces, prediction domains with highly sparse data, and/or predictiondomains with high cardinality data. Thus, there is a technical need forpredictive data analysis solutions that are capable of efficiently andreliably performing predictive data analysis in prediction domains withcomplex input spaces.

Various embodiments of the present invention address technicalchallenges related to efficiently and reliably performing predictivedata analysis in prediction domains. For example, in some embodiments,proposed solutions disclose generating an image representation of one ormore categorical input features, where the image representationcomprises one or more image region values each associated with acategorical input feature of the one or more categorical input features,and each image region value of the one or more image region values isdetermined based at least in part on the corresponding categoricaland/or scalar input feature associated with the image region value.After being generated, the image representation can be utilized by animage-based machine learning model (e.g., a machine learning modelutilizing a CNN) to perform efficient and reliable predictive dataanalysis. The resulting machine learning solutions are more efficient totrain and more reliable when trained.

Various embodiments of the present invention disclose various techniquesfor generating image representations of categorical feature data.Examples of such techniques include reserved-spatial-location imagetransformations and coordinate-based reserved-spatial-location imagetransformations. Each of those techniques generates an imagerepresentation that can be utilized to perform efficient and reliableimage-based machine learning. Accordingly, by disclosing varioustechniques for transforming categorical/scalar feature data into imagerepresentations, various embodiments of the present invention enableutilizing efficient and reliable image-based machine learning solutionsto process categorical feature data. In doing so, various embodiments ofthe present invention address shortcomings of existing predictive dataanalysis solutions and enable solutions that are capable of efficientlyand reliably performing predictive data analysis in prediction domainswith complex input spaces.

II. Computer Program Products, Methods, and Computing Entities

Embodiments of the present invention may be implemented in various ways,including as computer program products that comprise articles ofmanufacture. Such computer program products may include one or moresoftware components including, for example, software objects, methods,data structures, or the like. A software component may be coded in anyof a variety of programming languages. An illustrative programminglanguage may be a lower-level programming language such as an assemblylanguage associated with a particular hardware architecture and/oroperating system platform. A software component comprising assemblylanguage instructions may require conversion into executable machinecode by an assembler prior to execution by the hardware architectureand/or platform. Another example programming language may be ahigher-level programming language that may be portable across multiplearchitectures. A software component comprising higher-level programminglanguage instructions may require conversion to an intermediaterepresentation by an interpreter or a compiler prior to execution.

Other examples of programming languages include, but are not limited to,a macro language, a shell or command language, a job control language, ascript language, a database query or search language, and/or a reportwriting language. In one or more example embodiments, a softwarecomponent comprising instructions in one of the foregoing examples ofprogramming languages may be executed directly by an operating system orother software component without having to be first transformed intoanother form. A software component may be stored as a file or other datastorage construct. Software components of a similar type or functionallyrelated may be stored together such as, for example, in a particulardirectory, folder, or library. Software components may be static (e.g.,pre-established or fixed) or dynamic (e.g., created or modified at thetime of execution).

A computer program product may include a non-transitorycomputer-readable storage medium storing applications, programs, programmodules, scripts, source code, program code, object code, byte code,compiled code, interpreted code, machine code, executable instructions,and/or the like (also referred to herein as executable instructions,instructions for execution, computer program products, program code,and/or similar terms used herein interchangeably). Such non-transitorycomputer-readable storage media include all computer-readable media(including volatile and non-volatile media).

In one embodiment, a non-volatile computer-readable storage medium mayinclude a floppy disk, flexible disk, hard disk, solid-state storage(SSS) (e.g., a solid state drive (SSD), solid state card (SSC), solidstate module (SSM), enterprise flash drive, magnetic tape, or any othernon-transitory magnetic medium, and/or the like. A non-volatilecomputer-readable storage medium may also include a punch card, papertape, optical mark sheet (or any other physical medium with patterns ofholes or other optically recognizable indicia), compact disc read onlymemory (CD-ROM), compact disc-rewritable (CD-RW), digital versatile disc(DVD), Blu-ray disc (BD), any other non-transitory optical medium,and/or the like. Such a non-volatile computer-readable storage mediummay also include read-only memory (ROM), programmable read-only memory(PROM), erasable programmable read-only memory (EPROM), electricallyerasable programmable read-only memory (EEPROM), flash memory (e.g.,Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC),secure digital (SD) memory cards, SmartMedia cards, CompactFlash (CF)cards, Memory Sticks, and/or the like. Further, a non-volatilecomputer-readable storage medium may also include conductive-bridgingrandom access memory (CBRAM), phase-change random access memory (PRAM),ferroelectric random-access memory (FeRAM), non-volatile random-accessmemory (NVRAM), magnetoresistive random-access memory (MRAM), resistiverandom-access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory(SONOS), floating junction gate random access memory (FJG RAM),Millipede memory, racetrack memory, and/or the like.

In one embodiment, a volatile computer-readable storage medium mayinclude random access memory (RAM), dynamic random access memory (DRAM),static random access memory (SRAM), fast page mode dynamic random accessmemory (FPM DRAM), extended data-out dynamic random access memory (EDODRAM), synchronous dynamic random access memory (SDRAM), double datarate synchronous dynamic random access memory (DDR SDRAM), double datarate type two synchronous dynamic random access memory (DDR2 SDRAM),double data rate type three synchronous dynamic random access memory(DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), TwinTransistor RAM (TTRAM), Thyristor RAM (T-RAM), Zero-capacitor (Z-RAM),Rambus in-line memory module (RIMM), dual in-line memory module (DIMM),single in-line memory module (SIMM), video random access memory (VRAM),cache memory (including various levels), flash memory, register memory,and/or the like. It will be appreciated that where embodiments aredescribed to use a computer-readable storage medium, other types ofcomputer-readable storage media may be substituted for or used inaddition to the computer-readable storage media described above.

As should be appreciated, various embodiments of the present inventionmay also be implemented as methods, apparatus, systems, computingdevices, computing entities, and/or the like. As such, embodiments ofthe present invention may take the form of an apparatus, system,computing device, computing entity, and/or the like executinginstructions stored on a computer-readable storage medium to performcertain steps or operations. Thus, embodiments of the present inventionmay also take the form of an entirely hardware embodiment, an entirelycomputer program product embodiment, and/or an embodiment that comprisescombination of computer program products and hardware performing certainsteps or operations. Embodiments of the present invention are describedbelow with reference to block diagrams and flowchart illustrations.Thus, it should be understood that each block of the block diagrams andflowchart illustrations may be implemented in the form of a computerprogram product, an entirely hardware embodiment, a combination ofhardware and computer program products, and/or apparatus, systems,computing devices, computing entities, and/or the like carrying outinstructions, operations, steps, and similar words used interchangeably(e.g., the executable instructions, instructions for execution, programcode, and/or the like) on a computer-readable storage medium forexecution. For example, retrieval, loading, and execution of code may beperformed sequentially such that one instruction is retrieved, loaded,and executed at a time. In some exemplary embodiments, retrieval,loading, and/or execution may be performed in parallel such thatmultiple instructions are retrieved, loaded, and/or executed together.Thus, such embodiments can produce specifically-configured machinesperforming the steps or operations specified in the block diagrams andflowchart illustrations. Accordingly, the block diagrams and flowchartillustrations support various combinations of embodiments for performingthe specified instructions, operations, or steps.

III. Exemplary System Architecture

FIG. 1 provides an exemplary overview of an architecture 100 that can beused to practice embodiments of the present invention. The architecture100 includes a predictive data analysis system 101 and one or moreexternal computing entities 102. For example, at least some of the oneor more external computing entities 102 may provide prediction inputs tothe predictive data analysis system 101 and receive predictive outputsfrom the predictive data analysis system 101 in response to providingthe prediction inputs. As another example, at least some of the externalcomputing entities 102 may provide prediction inputs to the predictivedata analysis system 101 and request performance of particularprediction-based actions in accordance with the provided predictions. Asa further example, at least some of the external computing entities 102may provide training data objects to the predictive data analysis system101 and request the training of a predictive model in accordance withthe provided training data objects. In some of the noted embodiments,the predictive data analysis system 101 may be configured to transmitparameters and/or hyper-parameters of a trained machine learning modelto the external computing entities 102.

In some embodiments, the predictive data analysis computing entity 106and the external computing entities 102 may be configured to communicateover a communication network (not shown). The communication network mayinclude any wired or wireless communication network including, forexample, a wired or wireless local area network (LAN), personal areanetwork (PAN), metropolitan area network (MAN), wide area network (WAN),or the like, as well as any hardware, software and/or firmware requiredto implement it (such as, e.g., network routers, and/or the like).

The predictive data analysis computing entity 106 may include apredictive data analysis computing entity 106 and a storage subsystem108. The predictive data analysis computing entity 106 may be configuredto train a prediction model based at least in part on the training data122 stored in the storage subsystem 108, store trained prediction modelsas part of the model definition data 121 stored in the storage subsystem108, utilize trained models to generate predictions based at least inpart on prediction inputs provided by an external computing entity 102,and perform prediction-based actions based at least in part on thegenerated predictions. The storage subsystem may be configured to storethe model definition data 121 for one or more predictive analysis modelsand the training data 122 uses to train one or more predictive analysismodels. The storage subsystem 108 may include one or more storage units,such as multiple distributed storage units that are connected through acomputer network. Each storage unit in the storage subsystem 108 maystore at least one of one or more data assets and/or one or more dataabout the computed properties of one or more data assets. Moreover, eachstorage unit in the storage subsystem 108 may include one or morenon-volatile storage or memory media including but not limited to harddisks, ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards,Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM,Millipede memory, racetrack memory, and/or the like.

The predictive data analysis computing entity 106 includes a featureextraction engine 111, a predictive analysis engine 112, and a trainingengine 113. The feature extraction engine 111 may be configured toprocess prediction inputs to generate relevant processed features forpredictive data analysis processing by the predictive analysis engine112. For example, the feature extraction engine 111 may be configured togenerate image representations of categorical feature data (e.g., asdescribed with reference to FIGS. 4-20). The predictive analysis engine112 may be configured to perform predictive data analysis based at leastin part on the processed features generated by the feature extractionengine 111. For example, the predictive analysis engine 112 may beconfigured to perform image-based predictive data analysis (e.g., byusing one or more CNNs, as for example described with reference to FIGS.21-23) based at least in part on the image representations generated bythe feature extraction engine. The training engine 113 may be configuredto train at least one of the feature extraction engine 111 and thepredictive analysis engine 112 in accordance with the training data 122stored in the storage subsystem 108. Example operations of the trainingengine 113 are described with reference to FIG. 24.

A. Exemplary Predictive Data Analysis Computing Entity

FIG. 2 provides a schematic of a predictive data analysis computingentity 106 according to one embodiment of the present invention. Ingeneral, the terms computing entity, computer, entity, device, system,and/or similar words used herein interchangeably may refer to, forexample, one or more computers, computing entities, desktops, mobilephones, tablets, phablets, notebooks, laptops, distributed systems,kiosks, input terminals, servers or server networks, blades, gateways,switches, processing devices, processing entities, set-top boxes,relays, routers, network access points, base stations, the like, and/orany combination of devices or entities adapted to perform the functions,operations, and/or processes described herein. Such functions,operations, and/or processes may include, for example, transmitting,receiving, operating on, processing, displaying, storing, determining,creating/generating, monitoring, evaluating, comparing, and/or similarterms used herein interchangeably. In one embodiment, these functions,operations, and/or processes can be performed on data, content,information, and/or similar terms used herein interchangeably.

As indicated, in one embodiment, the predictive data analysis computingentity 106 may also include one or more communications interfaces 220for communicating with various computing entities, such as bycommunicating data, content, information, and/or similar terms usedherein interchangeably that can be transmitted, received, operated on,processed, displayed, stored, and/or the like.

As shown in FIG. 2, in one embodiment, the predictive data analysiscomputing entity 106 may include or be in communication with one or moreprocessing elements 205 (also referred to as processors, processingcircuitry, and/or similar terms used herein interchangeably) thatcommunicate with other elements within the predictive data analysiscomputing entity 106 via a bus, for example. As will be understood, theprocessing element 205 may be embodied in a number of different ways.For example, the processing element 205 may be embodied as one or morecomplex programmable logic devices (CPLDs), microprocessors, multi-coreprocessors, coprocessing entities, application-specific instruction-setprocessors (ASIPs), microcontrollers, and/or controllers. Further, theprocessing element 205 may be embodied as one or more other processingdevices or circuitry. The term circuitry may refer to an entirelyhardware embodiment or a combination of hardware and computer programproducts. Thus, the processing element 205 may be embodied as integratedcircuits, application specific integrated circuits (ASICs), fieldprogrammable gate arrays (FPGAs), programmable logic arrays (PLAs),hardware accelerators, other circuitry, and/or the like. As willtherefore be understood, the processing element 205 may be configuredfor a particular use or configured to execute instructions stored involatile or non-volatile media or otherwise accessible to the processingelement 205. As such, whether configured by hardware or computer programproducts, or by a combination thereof, the processing element 205 may becapable of performing steps or operations according to embodiments ofthe present invention when configured accordingly.

In one embodiment, the predictive data analysis computing entity 101 mayfurther include or be in communication with non-volatile media (alsoreferred to as non-volatile storage, memory, memory storage, memorycircuitry and/or similar terms used herein interchangeably). In oneembodiment, the non-volatile storage or memory may include one or morenon-volatile storage or memory media 210, including but not limited tohard disks, ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memorycards, Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJGRAM, Millipede memory, racetrack memory, and/or the like. As will berecognized, the non-volatile storage or memory media may storedatabases, database instances, database management systems, data,applications, programs, program modules, scripts, source code, objectcode, byte code, compiled code, interpreted code, machine code,executable instructions, and/or the like. The term database, databaseinstance, database management system, and/or similar terms used hereininterchangeably may refer to a collection of records or data that isstored in a computer-readable storage medium using one or more databasemodels, such as a hierarchical database model, network model, relationalmodel, entity-relationship model, object model, document model, semanticmodel, graph model, and/or the like.

In one embodiment, the predictive data analysis computing entity 106 mayfurther include or be in communication with volatile media (alsoreferred to as volatile storage, memory, memory storage, memorycircuitry and/or similar terms used herein interchangeably). In oneembodiment, the volatile storage or memory may also include one or morevolatile storage or memory media 215, including but not limited to RAM,DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory,register memory, and/or the like. As will be recognized, the volatilestorage or memory media may be used to store at least portions of thedatabases, database instances, database management systems, data,applications, programs, program modules, scripts, source code, objectcode, byte code, compiled code, interpreted code, machine code,executable instructions, and/or the like being executed by, for example,the processing element 205. Thus, the databases, database instances,database management systems, data, applications, programs, programmodules, scripts, source code, object code, byte code, compiled code,interpreted code, machine code, executable instructions, and/or the likemay be used to control certain aspects of the operation of thepredictive data analysis computing entity 106 with the assistance of theprocessing element 205 and operating system.

As indicated, in one embodiment, the predictive data analysis computingentity 106 may also include one or more communications interfaces 220for communicating with various computing entities, such as bycommunicating data, content, information, and/or similar terms usedherein interchangeably that can be transmitted, received, operated on,processed, displayed, stored, and/or the like. Such communication may beexecuted using a wired data transmission protocol, such as fiberdistributed data interface (FDDI), digital subscriber line (DSL),Ethernet, asynchronous transfer mode (ATM), frame relay, data over cableservice interface specification (DOCSIS), or any other wiredtransmission protocol. Similarly, the predictive data analysis computingentity 106 may be configured to communicate via wireless externalcommunication networks using any of a variety of protocols, such asgeneral packet radio service (GPRS), Universal Mobile TelecommunicationsSystem (UMTS), Code Division Multiple Access 2000 (CDMA2000), CDMA20001×(1×RTT), Wideband Code Division Multiple Access (WCDMA), Global Systemfor Mobile Communications (GSM), Enhanced Data rates for GSM Evolution(EDGE), Time Division-Synchronous Code Division Multiple Access(TD-SCDMA), Long Term Evolution (LTE), Evolved Universal TerrestrialRadio Access Network (E-UTRAN), Evolution-Data Optimized (EVDO), HighSpeed Packet Access (HSPA), High-Speed Downlink Packet Access (HSDPA),IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), ultra-wideband (UWB),infrared (IR) protocols, near field communication (NFC) protocols,Wibree, Bluetooth protocols, wireless universal serial bus (USB)protocols, and/or any other wireless protocol.

Although not shown, the predictive data analysis computing entity 106may include or be in communication with one or more input elements, suchas a keyboard input, a mouse input, a touch screen/display input, motioninput, movement input, audio input, pointing device input, joystickinput, keypad input, and/or the like. The predictive data analysiscomputing entity 106 may also include or be in communication with one ormore output elements (not shown), such as audio output, video output,screen/display output, motion output, movement output, and/or the like.

B. Exemplary External Computing Entity

FIG. 3 provides an illustrative schematic representative of an externalcomputing entity 102 that can be used in conjunction with embodiments ofthe present invention. In general, the terms device, system, computingentity, entity, and/or similar words used herein interchangeably mayrefer to, for example, one or more computers, computing entities,desktops, mobile phones, tablets, phablets, notebooks, laptops,distributed systems, kiosks, input terminals, servers or servernetworks, blades, gateways, switches, processing devices, processingentities, set-top boxes, relays, routers, network access points, basestations, the like, and/or any combination of devices or entitiesadapted to perform the functions, operations, and/or processes describedherein. External computing entities 102 can be operated by variousparties. As shown in FIG. 3, the external computing entity 102 caninclude an antenna 312, a transmitter 304 (e.g., radio), a receiver 306(e.g., radio), and a processing element 308 (e.g., CPLDs,microprocessors, multi-core processors, coprocessing entities, ASIPs,microcontrollers, and/or controllers) that provides signals to andreceives signals from the transmitter 304 and receiver 306,correspondingly.

The signals provided to and received from the transmitter 304 and thereceiver 306, correspondingly, may include signaling information/data inaccordance with air interface standards of applicable wireless systems.In this regard, the external computing entity 102 may be capable ofoperating with one or more air interface standards, communicationprotocols, modulation types, and access types. More particularly, theexternal computing entity 102 may operate in accordance with any of anumber of wireless communication standards and protocols, such as thosedescribed above with regard to the predictive data analysis computingentity 106. In a particular embodiment, the external computing entity102 may operate in accordance with multiple wireless communicationstandards and protocols, such as UMTS, CDMA2000, 1×RTT, WCDMA, GSM,EDGE, TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, Wi-Fi Direct,WiMAX, UWB, IR, NFC, Bluetooth, USB, and/or the like. Similarly, theexternal computing entity 102 may operate in accordance with multiplewired communication standards and protocols, such as those describedabove with regard to the predictive data analysis computing entity 106via a network interface 320.

Via these communication standards and protocols, the external computingentity 102 can communicate with various other entities using conceptssuch as Unstructured Supplementary Service Data (USSD), Short MessageService (SMS), Multimedia Messaging Service (MMS), Dual-ToneMulti-Frequency Signaling (DTMF), and/or Subscriber Identity ModuleDialer (SIM dialer). The external computing entity 102 can also downloadchanges, add-ons, and updates, for instance, to its firmware, software(e.g., including executable instructions, applications, programmodules), and operating system.

According to one embodiment, the external computing entity 102 mayinclude location determining aspects, devices, modules, functionalities,and/or similar words used herein interchangeably. For example, theexternal computing entity 102 may include outdoor positioning aspects,such as a location module adapted to acquire, for example, latitude,longitude, altitude, geocode, course, direction, heading, speed,universal time (UTC), date, and/or various other information/data. Inone embodiment, the location module can acquire data, sometimes known asephemeris data, by identifying the number of satellites in view and therelative positions of those satellites (e.g., using global positioningsystems (GPS)). The satellites may be a variety of different satellites,including Low Earth Orbit (LEO) satellite systems, Department of Defense(DOD) satellite systems, the European Union Galileo positioning systems,the Chinese Compass navigation systems, Indian Regional Navigationalsatellite systems, and/or the like. This data can be collected using avariety of coordinate systems, such as the Decimal Degrees (DD);Degrees, Minutes, Seconds (DMS); Universal Transverse Mercator (UTM);Universal Polar Stereographic (UPS) coordinate systems; and/or the like.Alternatively, the location information/data can be determined bytriangulating the external computing entity's 102 position in connectionwith a variety of other systems, including cellular towers, Wi-Fi accesspoints, and/or the like. Similarly, the external computing entity 102may include indoor positioning aspects, such as a location moduleadapted to acquire, for example, latitude, longitude, altitude, geocode,course, direction, heading, speed, time, date, and/or various otherinformation/data. Some of the indoor systems may use various position orlocation technologies including RFID tags, indoor beacons ortransmitters, Wi-Fi access points, cellular towers, nearby computingdevices (e.g., smartphones, laptops) and/or the like. For instance, suchtechnologies may include the iBeacons, Gimbal proximity beacons,Bluetooth Low Energy (BLE) transmitters, NFC transmitters, and/or thelike. These indoor positioning aspects can be used in a variety ofsettings to determine the location of someone or something to withininches or centimeters.

The external computing entity 102 may also comprise a user interface(that can include a display 316 coupled to a processing element 308)and/or a user input interface (coupled to a processing element 308). Forexample, the user interface may be a user application, browser, userinterface, and/or similar words used herein interchangeably executing onand/or accessible via the external computing entity 102 to interact withand/or cause display of information/data from the predictive dataanalysis computing entity 106, as described herein. The user inputinterface can comprise any of a number of devices or interfaces allowingthe external computing entity 102 to receive data, such as a keypad 318(hard or soft), a touch display, voice/speech or motion interfaces, orother input device. In embodiments including a keypad 318, the keypad318 can include (or cause display of) the conventional numeric (0-9) andrelated keys (#, *), and other keys used for operating the externalcomputing entity 102 and may include a full set of alphabetic keys orset of keys that may be activated to provide a full set of alphanumerickeys. In addition to providing input, the user input interface can beused, for example, to activate or deactivate certain functions, such asscreen savers and/or sleep modes.

The external computing entity 102 can also include volatile storage ormemory 322 and/or non-volatile storage or memory 324, which can beembedded and/or may be removable. For example, the non-volatile memorymay be ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards,Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM,Millipede memory, racetrack memory, and/or the like. The volatile memorymay be RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM,cache memory, register memory, and/or the like. The volatile andnon-volatile storage or memory can store databases, database instances,database management systems, data, applications, programs, programmodules, scripts, source code, object code, byte code, compiled code,interpreted code, machine code, executable instructions, and/or the liketo implement the functions of the external computing entity 102. Asindicated, this may include a user application that is resident on theentity or accessible through a browser or other user interface forcommunicating with the predictive data analysis computing entity 106and/or various other computing entities.

In another embodiment, the external computing entity 102 may include oneor more components or functionality that are the same or similar tothose of the predictive data analysis computing entity 106, as describedin greater detail above. As will be recognized, these architectures anddescriptions are provided for exemplary purposes only and are notlimiting to the various embodiments.

In various embodiments, the external computing entity 102 may beembodied as an artificial intelligence (AI) computing entity, such as anAmazon Echo, Amazon Echo Dot, Amazon Show, Google Home, and/or the like.Accordingly, the external computing entity 102 may be configured toprovide and/or receive information/data from a user via an input/outputmechanism, such as a display, a camera, a speaker, a voice-activatedinput, and/or the like. In certain embodiments, an AI computing entitymay comprise one or more predefined and executable program algorithmsstored within an onboard memory storage module, and/or accessible over anetwork. In various embodiments, the AI computing entity may beconfigured to retrieve and/or execute one or more of the predefinedprogram algorithms upon the occurrence of a predefined trigger event.

IV. Exemplary System Operations

In general, embodiments of the present invention provide methods,apparatus, systems, computing devices, computing entities, and/or thelike for predictive data analysis of categorical data using imagetransformations. Certain embodiments utilize systems, methods, andcomputer program products that perform predictive analysis ofcategorical data using image transformations (e.g.,reserved-spatial-location image transformations, coordinate-basedreserved-spatial-location image transformations), and using image-basedmachine learning models (e.g., machine learning models that utilizeCNNs).

Various embodiments of the present invention address technicalchallenges related to efficiently and reliably performing predictivedata analysis in prediction domains. For example, in some embodiments,proposed solutions disclose generating an image representation of one ormore categorical input features, where the image representationcomprises one or more image region values each associated with acategorical input feature of the one or more categorical input features,and each image region value of the one or more image region values isdetermined based at least in part on the correspondingcategorical/scalar input feature associated with the image region value.After being generated, the image representation can be utilized by animage-based machine learning model (e.g., a machine learning modelutilizing a CNN) to perform efficient and reliable predictive dataanalysis. The resulting machine learning solutions are more efficient totrain and more reliable when trained.

Image-Based Predictive Inference

FIG. 4 is a flowchart diagram of an example process 400 for performingimage-based predictive data analysis. Via the various steps/operationsof process 400, the predictive data analysis computing entity 106 canprocess categorical input features (e.g., structured text inputfeatures) to generate one or more predictive data analysis conclusions.In doing so, the predictive data analysis computing entity 106 canutilize image-based machine learning solutions (e.g., solutionsutilizing CNNs) to infer important predictive insights from categoricalinput features, such as structured text input features.

The process 400 begins at step/operation 401 when the feature extractionengine 111 of the predictive data analysis computing entity 106 obtainsone or more categorical input features. Examples of categorical inputfeatures include structured text input features, such as categoricalinput features that include feature data associated with a predictiveentity. For example, the one or more categorical input features mayinclude feature data (e.g., medical feature data) associated with aparticular patient predictive entity. As another example, the one ormore categorical input features may include feature data (e.g.,transactional feature data) associated with a medical providerinstitution predictive entity. As yet another example, the one or morecategorical input features may include feature data (e.g., worddistribution feature data) associated with a medical note predictiveentity.

At step/operation 402, the feature extraction engine 111 generates oneor more images based at least in part on the one or more-categoricalinput features obtained/received in step/operation 402. In someembodiments, to generate the one or more images based at least in parton the one or more categorical input features, the feature extractionengine 111 retrieves configuration data for a particular image-basedtransformation routine from the model definition data 121 stored in thestorage subsystem 108. Examples of image-based transformation routinesare discussed below with reference to FIGS. 4-10. However, one ofordinary skill in the art will recognize that the feature extractionengine 111 may generate the one or more images by applying any suitabletechnique for transforming the one or more-categorical input featuresinto the one or more images. In some embodiments, the feature extractionengine 111 selects a suitable image-based transformation routine for theone or more categorical input features given one or more properties ofthe categorical input features (e.g., sparseness of the one or morecategorical input features, cardinality of the one or more categoricalinput features, size of the one or more categorical input features,structural complexity of the one or more categorical input features,accuracy of predictions generated based at least in part on the one ormore categorical input features, etc.).

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of the process depicted in FIG. 5,which is flowchart diagram of an example process for generating the oneor more images by applying a reserved-spatial-location transformation tothe one or more categorical/scalar input features. The process depictedin FIG. 5 begins at step/operation 501 when the feature extractionengine 111 identifies the one or more categorical/scalar input features.

At step/operation 502, the feature extraction engine 111 determines, foreach categorical input feature of the one or more categorical inputfeatures, an image region within an image space. An image region withinthe image space is a portion of the image space defined based at leastin part on two or more region dimension sizes. In some embodiments, eachset of region dimension sizes for a categorical input feature of the oneor more categorical input features may be defined by the transformationconfiguration data for the reserved-spatial-location transformation,e.g., based at least in part on one or more predefined parameters and/orone or more learned parameters determined using a training process, suchas an optimization-based training process (e.g., agradient-descent-based training process).

An operational example of a reserved-spatial-location division 600 of animage space 601 into various image regions 611-620 is depicted in FIG.6A. As depicted in the reserved-spatial-location division 600 of FIG.6A, image region 611 is assigned to a principal diagnosis codecategorical input feature; image region 612 is assigned to a providertaxonomy categorical input feature; image region 613 is assigned to aprovider state categorical input feature; image region 614 is assignedto a par/non-par designation categorical input feature; image region 615is assigned to a procedure code categorical input feature; image region616 is assigned to a modifier code input feature; image region 617 isassigned to a place of service code categorical input feature; imageregion 618 is assigned to a provider-patient distance scalar inputfeature; image region 619 is assigned to a patient-gender-and-agecategorical and scalar input features; and image region 620 is assignedto a claim amount scaler input feature.

At step/operation 503, the feature extraction engine 111 determines, foreach image region determined in step/operation 502, an image regionvalue based at least in part on the categorical input feature that isassociated with the particular image region. In some embodiments, theimage region value for a particular image region includes pixel valuesfor the particular image region.

At step/operation 504, the feature extraction engine 111 generates areserved-spatial-location image based at least in part on each imageregion value determined in step/operation 503. In some embodiments, thefeature extraction engine 111 combines each image region value in acorresponding image region for the image region value in order togenerate the reserved-spatial-location image based at least in part oneach image region value determined in step/operation 503.

An operational example of a reserved-spatial location image 700 isdepicted in FIG. 7. As depicted in reserved-spatial location image 700,each image region 711-720 is associated with a particular image regionvalue. For example, the image region 711 (associated with a principaldiagnosis code categorical input feature) has a corresponding imageregion value that depicts the text value “M7582”; the image region 712(associated with a level 2 provider specialization code categoricalinput feature) has a corresponding image region value that depicts thetext value “1223”; the image region 713 (associated with a providerstate code categorical input feature) has a corresponding image regionvalue that depicts the text value “TX”; the image region 714 (associatedwith a participant provider identifier categorical input feature) has acorresponding image region value that depicts the text value “P”; theimage region 715 (associated with a level 3 provider specialization codecategorical input feature) has a corresponding image region value thatdepicts the text value “00000”; the image region 716 (associated with aprocedure code categorical input feature) has a corresponding imageregion value that depicts the text value “A7172”; the image region 717(associated with a modifier code categorical input feature) has acorresponding image region value that depicts the text value “RT”; theimage region 718 (associated with a place-of-service code categoricalinput feature) has a corresponding image region value that depicts thetext value “81”; the image region 719 (associated with aprovider-patient distance scalar input feature) has a correspondingimage region value that depicts the value 1161; and the image region 720(associated with a claim amount scalar input feature) has acorresponding image region value whose color intensity depicts the value1000.

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of process depicted in FIG. 8, whichis a flowchart diagram of an example process for generating one or moreimages by applying a coordinate-based reserved-spatial-locationtransformation based at least in part on one or more categorical inputfeatures. The process depicted in FIG. 8 begins at step/operation 801when the feature extraction engine 111 identifies the one or morecategorical input features.

At step/operation 802, the feature extraction engine 111 identifiescoordinate channels associated an image space. In some embodiments, thecoordinate channels are determined based at least in part onfoundational coordinates associated with the feature data. For example,if the image space is associated with an RGB (red-green-blue) image, theplurality of coordinate channels may include a red channel, a greenchannel, and a blue channel.

At step/operation 803, the feature extraction engine 111 assigns eachcategorical input feature obtained/received in step/operation 801 to acoordinate grouping of a plurality of coordinate groupings. For example,the feature extraction engine 111 may assign a first group ofcategorical input features that relate to medical claim identifyinginformation into a first coordinate grouping; a second group ofcategorical input features that relate to predictive entity identifyinginformation into a second coordinate grouping; and a third remaininggroup of categorical input features into a third coordinate grouping. Insome embodiments, the number of the coordinate groupings and/or theassignment of the categorical input features to the coordinate groupingsmay be defined by the transformation configuration data for thecoordinate-based reserved-spatial-location transformation, e.g., basedat least in part on one or more predefined parameters and/or one or morelearned parameters determined using a training process, such as anoptimization-based training process (e.g., a gradient-descent-basedtraining process).

In some embodiments, the feature extraction engine 111 divides thecategorical input features into the plurality of coordinate groupings ina matter that minimizes the likelihood that similar values and/or valueshaving similar formats will belong to the same coordinate grouping. Forexample, if two categorical input features may both take the value “TX,”the feature extraction engine 111 may assign the two categorical inputfeatures to different coordinate groupings. As another example, thefeature extraction engine 111 may assign various categorical inputfeatures configured to different coordinate groupings, various scalarinput features configured to have intensity values-to differentcoordinate groupings, etc.

At step/operation 804, the feature extraction engine 111 assigns eachcoordinate grouping generated in step/operation 803 to a coordinatechannel identified in step/operation 802. For example, the featureextraction engine 111 may assign a red color-based channel in an RGBimage space to claim-information, a green color-based channel in the RGBimage space to a horizontal coordinate, and a blue color-based channelin the RGB image space to a vertical coordinate. In some embodiments,the assignment of coordinate groupings to coordinate channels may bedefined by the transformation configuration data for thecoordinate-based reserved-spatial-location transformation, e.g., basedat least in part on one or more predefined parameters and/or one or morelearned parameters determined using a training process, such as anoptimization-based training process (e.g., a gradient-descent-basedtraining process).

At step/operation 805, the feature extraction engine 111 generates thecoordinate-based reserved-spatial location image based on eachcoordinate channel. Operational examples are depicted in FIGS. 9A-9C. Inparticular, the green channel 910 depicts an example of a possiblehorizontal coordinates; the blue channel 940 depicts an example of apossible vertical coordinates; and claim information.

An operational example of generating a coordinate-basedreserved-spatial-location 1010 based at least in part on coordinates andinformation channels 1001-1003 as depicted in FIG. 10. As depicted inFIG. 10, the green channel 1001 (associated with horizontal coordinates)is merged with the blue channel 1002 (associated with verticalcoordinates) to generate a coordinate system 1003. Then, the coordinatesystem 1003 is merged with-the red channel 1004 (associated withinformation channel) to generate the coordinate-basedreserved-spatial-location image representation 1005.

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of FIG. 1100, which is a flowchartdiagram of an example process for generating one or more images byapplying a reserved-pattern transformation to one or more categoricalinput features. The process depicted in FIG. 11 begins at step/operation1101 when the feature extraction engine 111 identifies the one or morecategorical input features

At step/operation 1102, the feature extraction engine 111 assigns aformatting pattern to each categorical input feature obtained/receivedin step/operation 1101. A formatting pattern may indicate a range ofcharacters (e.g., ASCII characters and/or Unicode characters) that canbe used to represent values associated with the categorical inputfeature. Examples of formatting patterns include an English alphanumericrange of characters, an Arabic alphanumeric range of characters, a rangeof characters including {K, 1, 3, $, #}, etc.

At step/operation 1103, the feature extraction engine 111 determines,for each identified image region, an image region value based at leastin part on the categorical input feature that is associated with theparticular image region and the formatting pattern for the categoricalinput feature. In some embodiments, the image region value for aparticular image region includes pixel values for the particular imageregion.

At step/operation 1104, the feature extraction engine 111 generates areserved-pattern image based at least in part on each image region valuedetermined in step/operation 1104. In some embodiments, the featureextraction engine 111 combines each image region value in acorresponding image region for the image region value to generate thereserved-pattern image based at least in part on each image region valuedetermined in step/operation 1104.

An operational example of a reserved-pattern image 1200 is depicted inFIG. 12. As depicted in the reserved-pattern image 1200, each imageregion 1211-1221 is associated with an image region value. For example,the image region 1211 (associated with a principal diagnosis codecategorical input feature) has a corresponding image region valueassociated with a first formatting pattern; the image region 1212(associated with a level 2 provider taxonomy code categorical inputfeature) has a corresponding image region value associated with a secondformatting pattern; the image region 1213 (associated with a providerstate code categorical input feature) has a corresponding image regionvalue associated with a third formatting pattern; the image region 1214(associated with a participant provider identifier categorical inputfeature) has a corresponding image region value associated with a fourthformatting pattern; the image region 1215 (associated with a level 3provider taxonomy code categorical input feature) has a correspondingimage region value associated with a fifth formatting pattern; the imageregion 1216 (associated with a procedure code categorical input feature)has a corresponding image region value associated with a sixthformatting pattern; the image region 1217 (associated with a modifiercode categorical input feature) has a corresponding image region valueassociated with a seventh formatting pattern; the image region 1218(associated with a place-of-service code categorical input feature) hasa corresponding image region value associated with an eight formattingpattern; the image region 1219 (associated with a provider-patientdistance scalar input feature) has a corresponding image region valueassociated with a ninth formatting pattern; the image region 1220(associated with a patient-gender-and-age categorical and scalar inputfeatures) has a corresponding image region value associated with a tenthformatting pattern; and the image region 1221 (associated with a claimamount categorical input feature) has a corresponding image regionassociated with an eleventh formatting pattern.

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of FIG. 13, which is a flowchartdiagram of an example process for generating one or more images byapplying a feature-channel-based reserved-spatial-locationtransformation to the one or more categorical input features. Theprocess depicted in FIG. 13 begins at step/operation 1301 when thefeature extraction engine 111 obtains/receives the one or morecategorical input features. At step/operation 1302, the featureextraction engine 111 determines one or more character patterns for eachof the one or more categorical input features, where each characterpattern is associated with an ordered combination of one or morealphanumeric characters.

At step/operation 1303, the feature extraction engine 111 determines,for each categorical input feature of the one or more categorical inputfeatures, an image region within an image space. An image region withinthe image space is a portion of the image space defined based at leastin part on two or more region dimension sizes. For example, an imageregion within an image space may include one pixel of the image space.In some embodiments, because feature-channel-basedreserved-spatial-location transformation utilizes various feature-basedchannels each corresponding to the image space, the image space size forthe image space utilized for feature-channel-basedreserved-spatial-location transformation may be smaller than the imagespace size for the image space utilized for reserved-spatial-locationtransformation, coordinate-based reserved-spatial-locationtransformation, and/or reserved-pattern transformation.

At step/operation 1304, the feature extraction engine 111 generates afeature-based channel for each character pattern, where thefeature-based channel for a particular character pattern indicateswhether various categorical features include the particular characterpattern. Operational examples of feature-based channels are depicted inthe feature-based channels 1401-1406 of FIGS. 14A-F correspondingly. Ineach of the feature-based channels 1401-1406, each pixel corresponds tothe image region for a particular categorical input feature.Accordingly, a white value for an image region within a particularfeature-based channel 1401-1406 indicates presence of the characterpattern associated with the feature-based channel 1401-1406 in thecategorical input feature associated with the image region, while ablack value for an image region within a particular feature-basedchannel 1401-1406 indicates absence of character pattern associated withthe feature-based channel 1401-1406 in the categorical input featureassociated with the image region.

For example, with respect to the feature-based channel 1401 of FIG. 14Awhich is associated with presence of the character “0” in variouscategorical input features, the white value of pixel 1411 indicatespresence of the character “0” in a categorical input feature associatedwith the pixel 1411. With respect to the feature-based channel 1402 ofFIG. 14B which is associated with presence of the character “1” invarious categorical input features, the black value of pixel 1412indicates absence of the character “1” in a categorical input featureassociated with the pixel 1412. With respect to the feature-basedchannel 1403 of FIG. 14C which is associated with presence of thecharacter “2” in various categorical input features, the white value ofpixel 1413 indicates presence of the character “2” in a categoricalinput feature associated with the pixel 1413. With respect to thefeature-based channel 1404 of FIG. 14D which is associated with presenceof the character “A” in various categorical input features, the blackvalue of pixel 1414 indicates absence of the character “A” in acategorical input feature associated with the pixel 1414. With respectto the feature-based channel 1405 of FIG. 14E which is associated withpresence of the character “T” in various categorical input features, thewhite value of pixel 1415 indicates presence of the character “T” in acategorical input feature associated with the pixel 1415. With respectto the feature-based channel 1406 of FIG. 14F which is associated withpresence of the character “Z” in various categorical input features, theblack value of pixel 1416 indicates absence of the character “Z” in acategorical input feature associated with the pixel 1416.

In some embodiments, the feature extraction engine 111 combines thefeature-based channels generated in step/operation 1304 to generate theone or more images corresponding to a feature-channel-basedreserved-spatial-location transformation of the one or more categoricalinput features. An operational example of a set of combinedfeature-based channels 1501 is depicted in FIGS. 15-16.

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of FIG. 17, which is a flowchartdiagram of an example process for generating one or more images based atleast in part on a feature-channel-based and coordinate-basedreserved-spatial-location transformation of one or more categoricalinput features. The process depicted in FIG. 17 begins at step/operation1701 when the feature extraction engine 111 identifies the one or morecategorical input features. At step/operation 1702, the featureextraction engine 111 generates one or more feature-based channels forthe one or more categorical input features (e.g., by using the processdepicted in FIG. 13). At step/operation 1703, the feature extractionengine 111 generates one or more coordinate channels for the one or morecategorical input features (e.g., by using the process depicted in FIG.8).

At step/operation 1704, the feature extraction engine 111 combines theone or more feature-based channels generated in step/operation 1702 andthe one or more coordinate channels generated in step/operation 1703 togenerate the feature-channel-based and coordinate-basedreserved-spatial-location transformation of one or more categoricalinput features. An operational example of generating afeature-channel-based and coordinate-based reserved-spatial-locationtransformation 1801 is depicted in FIG. 18, which depicts merging twocoordinate channels 1802 with N feature-based channels 1803 in order togenerate the feature-channel-based and coordinate-basedreserved-spatial-location transformation 1804 for one or morecategorical input features.

In some embodiments, step/operation 402 may be performed in accordancewith the various steps/operations of FIG. 19, which is a flowchartdiagram of an example process for generating one or more images based atleast in part on a scalar reserved-spatial-location transformation ofone or more categorical input features. The process depicted in FIG. 19begins at step/operation 1901 when the feature extraction engine 111generates a reserved-spatial-location image of the one or morecategorical input features. At step/operation 1902, the featureextraction engine 111 determines a corresponding scalar image value foreach character region within the reserved-spatial-location image of theone or more categorical input features. For example, the featureextraction engine 111 may determine a grayscale value for each portionof the reserved-spatial-location image that corresponds to a particularcharacter based at least in part on a mapping of characters to grayscalevalues. At step/operation 1903, the feature extraction engine 111generates the scalar reserved-spatial-location image of the one or morecategorical input features based at least in part on each scalar valuedetermined in step/operation 1902.

An operational example of a scalar reserved-spatial-location image 2002is depicted in FIG. 20. The scalar image value of each character region(e.g., character regions 2011 and 2012) in the scalarreserved-spatial-location image 2002 is determined based at least inpart on a value of a character associated with the particular characterregion. For example, as depicted in FIG. 20, the scalar image value ofcharacter region 2011 in the scalar reserved-spatial-location image 2002is determined based at least in part on the value of the character “M”2021 from the reserved-spatial location image 2001, while the scalarimage value of character region 2012 in the scalarreserved-spatial-location image 2001 is determined based at least inpart on the value of the character “7” 2122 from the reserved-spatiallocation image 2001. In some embodiments, the feature extraction engine111 may map character values associated with the characters “M” and “7”(e.g., ASCII or Unicode character values associated with the two notedcharacters) to grayscale values.

At step/operation 403, the predictive analysis engine 112 processes theone or images using an image-based machine learning model to generateone or more predictions. Examples of an image-based machine learningmodels include a machine learning model that utilizes a CNN. Otherexamples of an image-based machine learning model include a feedforwardneural network. In some embodiments, the image-based machine learningmodel may utilize a CNN in coordination with one or more other machinelearning models.

In some embodiments, step/operation 403 may be performed in accordancewith the convolutional neural network architecture 2100 depicted in theblock diagram of FIG. 21. As depicted in FIG. 21, the predictiveanalysis engine 112 receives one or more images 2111 generated by thefeature extraction engine 111 using one or more input layers 2101. Asfurther depicted in FIG. 21, the predictive analysis engine 112 utilizesone or more feature learning layers 2102 to process the output of theone or more input layers 2101 to generate one or more convolutionallayer outputs. In some embodiments, the one or more feature learninglayers 2102 are configured to perform a combination of one or moresuccessive feature learning routines, where each feature learningroutine of the one or more successive feature routines includesperforming a convolutional operation (e.g., a convolutional operationusing one or more kernels and/or one or more filters) followed by anactivation operation (e.g., a rectified linear unit (ReLU) activationoperation) and followed by a pooling operation (e.g., a non-lineardown-sampling operation, such as a max pool operation). For example, asdepicted in the block diagram of FIG. 22, the one or more featurelearning layers 2102 may include two successive feature learningroutines, i.e., a first convolutional operation performed by a firstconvolutional layer 2201, followed by a first activation operation by afirst activation layer 2202, followed by a first pooling operation by afirst pooling layer 2203, followed by a second convolutional operationby a second convolutional layer 2204, followed by a second activationoperation by a second activation layer 2205, and followed by a secondpooling operation by a second pooling layer 2206.

As further depicted in FIG. 21, the predictive analysis engine 112utilizes one or more prediction layers 2103 to process the one or moreconvolutional layer outputs generated by the one or more featurelearning layers 2102 to generate one or more raw prediction outputs. Insome embodiments, the one or more prediction layers 2103 including oneor more fully connected neural network layers. For example, as depictedin the block diagram of FIG. 24, the one or more prediction layers 2103may include a flattening layer 2301 configured to generate a flattenedversion of the one or more convolutional layer outputs generated by theone or more feature learning layers 2102, two fully connected layers2302-2303, and a normalization layer 2304 (e.g., a softmax normalizationlayer). Moreover, the predictive analysis engine 112 utilizes one ormore output layers 2104 to generate one or more predictions 2112 basedat least in part on the raw prediction outputs generated by the one ormore prediction layers 2103.

At step/operation 404, the predictive analysis engine 112 performs aprediction-based actions based at least in part on the predictionsgenerated in step/operation 403. Examples of prediction-based actionsinclude transmission of communications, activation of alerts, automaticscheduling of appointments, etc. As a further example, the predictiveanalysis engine 112 may determine based at least in part on operationaldata associated with one or more medical institutions that the one ormore medical institutions exhibit patterns of wasteful and/or fraudulentinsurance claim filings.

Training Image-Based Prediction Models

FIG. 24 is a flowchart diagram of an example process 2400 for training amachine learning model for performing image-based predictive dataanalysis. Via the various steps/operations of the process 2400, thepredictive data analysis computing entity 106 can train a machinelearning model to process categorical/scalar input features (e.g.,structured text input features) to generate one or more predictive dataanalysis conclusions.

The process 2400 begins at step/operation 2401 when the featureextraction engine 111 obtains/receives one or more training dataobjects, where each training data object includes one or morecategorical/scalar training input features and one or more ground-truthdeterminations for the one or more categorical/scalar input features.For example, the one or more training categorical/scalar input featuresin a particular training data object may include one or more patientfeatures for a patient, while the one or more ground-truthdeterminations in the particular training data object may includeparticular health information (e.g., particular diagnostic information)associated with the patient predictive entity. As another example, theone or more training-categorical/scalar input features in a particulartraining data object may include one or more operational features for amedical provider predictive entity, while the one or more ground-truthdeterminations in the particular training data object may includeparticular operational information (e.g., particular operationalstatistics) associated with the medical predictive entity. The featureextraction engine 111 may retrieve the categorical/scalar input featuresfrom the training data 122 stored on the storage subsystem and/orreceive the categorical/scalar input features from the training data 122from one or more external computing entities 102.

At step/operation 2402, the feature extraction engine 111 generates oneor more images based at least in part on the one or more training dataobjects obtained/received in step/operation 2401. For example, thefeature extraction engine 111 may process the one or morecategorical/scalar training input features associated with the trainingdata objects (e.g., in accordance with a process substantially similarto the process 400 of FIG. 4) to generate one or more images based atleast in part on the one or more training data objects obtained/receivedin step/operation 2401. In some embodiments, the feature extractionengine 111 provides the generated one or more images to the predictiveanalysis engine 112.

At step/operation 2403, the predictive analysis engine 112 generates oneor more predictions based at least in part on the one or more imagesgenerated in step/operation 2404. For example, the predictive analysisengine 112 may process the one or more images generated by thepredictive analysis engine 112 (e.g., using a CNN, such as the CNN 2100of FIG. 21) to generate one or more predictions based at least in parton the one or more images generated by the feature extraction engine 111in step/operation 2404. In some embodiments, the predictive analysisengine 112 provides the generated one or more predictions to thetraining engine 113.

At step/operation 2404, the training engine 113 generates an error modelbased at least in part on the one or more predictions. In someembodiments, the training engine 113 generates a measure of deviationbetween each of the one or more predictions and a correspondingground-truth determination in a training data object associated with theparticular prediction. The training engine 113 may then compute anoverall error measure based at least in part on the measure ofdeviation. The training engine 113 may then generate the error model asa model that relates the overall error measure to one or more trainableparameters of the machine learning model (e.g., at least one of one ormore trainable parameters associated with the feature extraction engine111 and one or more trainable parameters associated with the predictiveanalysis engine 112).

At step/operation 2405, the training engine 113 generates updated valuesfor one or more trainable parameters of the machine learning model in amanner that achieves an optimization of the error model. In someembodiments, the training engine 113 may generate the updated values forthe one or more trainable parameters of the machine learning model in amanner that achieves a local optimization of the error model. In someembodiments, the training engine 113 may generate the updated values forthe one or more trainable parameters of the machine learning model in amanner that achieves a global optimization of the error model. In someembodiments, to generate the updated values for the one or moretrainable parameters of the machine learning model in a manner thatachieves an optimization of the error model, the training engine 113uses one or more training algorithms, such as a gradient-descent-basedtraining algorithm.

Although the techniques described herein for generating imagerepresentations of categorical/scalar feature data are explained withreference to performing predictive data analysis, a person of ordinaryskill in the relevant technology will recognize that the disclosedtechniques have applications far beyond performing predictive dataanalysis. As an illustrative example, the disclosed techniques can beused in various data visualization applications. As another illustrativeexample, the disclosed techniques can be used to encode data inimage-based data structures that facilitate at least one of dataretrieval and data security. As yet another example, the disclosedtechniques can be utilized to enhance various steganography techniques.As a further illustrative example, the disclosed techniques can be usedto process and store data in spatial-temporal databases. In someembodiments, the disclosed techniques can be used to generate videorepresentations of categorical/scalar feature data, e.g., videorepresentations that illustrate changes in the correspondingcategorical/scalar feature over time.

V. Conclusion

Many modifications and other embodiments will come to mind to oneskilled in the art to which this disclosure pertains having the benefitof the teachings presented in the foregoing descriptions and theassociated drawings. Therefore, it is to be understood that thedisclosure is not to be limited to the specific embodiments disclosedand that modifications and other embodiments are intended to be includedwithin the scope of the appended claims. Although specific terms areemployed herein, they are used in a generic and descriptive sense onlyand not for purposes of limitation.

The invention claimed is:
 1. A computer-implemented method forgenerating an image representation of a plurality of categorical inputfeature values, the computer-implemented method comprising: determining,for each categorical input feature value of the plurality of categoricalinput feature values, a corresponding coordinate grouping of a pluralityof coordinate groupings, wherein the categorical input feature valuecomprises a text string; generating, for each coordinate grouping of theplurality of coordinate groupings that is associated with a relatedsubset of the plurality of categorical input feature values, acoordinate channel, wherein: (i) each coordinate channel is associatedwith a distinct color-based channel, (ii) each coordinate channelcomprises one or more coordinate region values each associated with arespective categorical input feature value in the related subset for thecoordinate channel, and (iii) each coordinate region of a particularcoordinate channel depicts a textual representation of the respectivecategorical input feature value that is associated with the coordinateregion using the distinct color-based channel that is associated withthe coordinate grouping; and generating the image representation of theplurality of categorical input feature values based at least in part oneach coordinate channel, wherein the image representation: (i)represents a merged image representation obtained by merging a pluralityof coordinate channels associated with the plurality of coordinategroupings, and (ii) comprises a plurality of distinct image regions,wherein each distinct image region is representative of a respectivecategorical input feature value that is associated with the distinctimage region.
 2. The computer-implemented method of claim 1, furthercomprising processing the image representation using an image-basedmachine learning model to generate an image-based prediction.
 3. Thecomputer-implemented method of claim 2, wherein: the plurality ofcategorical input feature values comprise one or more patient featuresassociated with a patient, and the image-based prediction is a healthprediction for the patient.
 4. The computer-implemented method of claim1, wherein the computer-implemented method is performed in response toselecting a first image generation technique of a plurality of imagegeneration techniques.
 5. The computer-implemented method of claim 4,wherein: the plurality of image generation techniques comprise a secondimage generation technique, and the second image generation techniquecomprises: determining an image region value corresponding to eachcategorical input feature value of the plurality of categorical inputfeature values, wherein at least one image region value is configured todepict a visual representation of textual data associated with acorresponding categorical input feature value that is associated withthe at least one image region value; and generating the imagerepresentation based at least in part on each image region valuecorresponding to the plurality of categorical input feature values. 6.The computer-implemented method of claim 4, wherein: the plurality ofimage generation techniques comprise a third image generation technique,and the third image generation technique comprises: identifying aplurality of character patterns; generating, for each character patternof the plurality of character patterns, a feature-based channel of aplurality of feature-based channels, wherein: (i) each feature-basedchannel comprises one or more feature-based channel region values, and(ii) each feature-based channel region value for a correspondingfeature-based channel is associated with a corresponding categoricalinput feature value, and (iii) each feature-based channel region valuefor a particular feature-based channel is determined based at least inpart on whether the corresponding categorical input feature value forthe feature-based channel region value comprises a correspondingcharacter pattern associated with the particular feature-based channel;and generating the image representation based at least in part on eachcorresponding feature-based channel of the plurality of coordinatechannels.
 7. The computer-implemented method of claim 1, wherein theimage representation is generated by merging each coordinate channelwith one or more feature-based channels.
 8. An apparatus for generatingan image representation of on a plurality of categorical input featurevalues, the apparatus comprising at least one processor and at least onememory including a computer program code, the at least one memory andthe computer program code configured to, with the at least oneprocessor, cause the apparatus to perform operations that are configuredto: determine, for each categorical input feature value of the pluralityof categorical input feature values, a corresponding coordinate groupingof a plurality of coordinate groupings, wherein the categorical inputfeature value comprises a text string; generate, for each coordinategrouping of the plurality of coordinate groupings that is associatedwith a related subset of the plurality of categorical input featurevalues, a coordinate channel, wherein: (i) each coordinate channel isassociated with a distinct color-based channel, (ii) each coordinatechannel comprises one or more coordinate region values each associatedwith a respective categorical input feature value in the related subsetfor the coordinate channel, and (iii) each coordinate region of aparticular coordinate channel depicts a textual representation of therespective categorical input feature value that is associated with thecoordinate region using the distinct color-based channel that isassociated with the coordinate grouping; and generate the imagerepresentation of the plurality of categorical input feature valuesbased at least in part on each coordinate channel, wherein the imagerepresentation: (i) represents a merged image representation obtained bymerging a plurality of coordinate channels associated with the pluralityof coordinate groupings, and (ii) comprises a plurality of distinctimage regions, wherein each distinct image region is representative of arespective categorical input feature value that is associated with thedistinct image region.
 9. The apparatus of claim 8, further comprisingprocessing the image representation using an image-based machinelearning model to generate an image-based prediction.
 10. The apparatusof claim 9, wherein: the plurality of categorical input feature valuescomprise one or more patient features associated with a patient, and theimage-based prediction is a health prediction for the patient.
 11. Theapparatus of claim 8, wherein the operations are performed in responseto selecting a first image generation technique of a plurality of imagegeneration techniques.
 12. The apparatus of claim 11, wherein: theplurality of image generation techniques comprise a second imagegeneration technique, and the second image generation techniquecomprises: determining an image region value corresponding to eachcategorical input feature value of the plurality of categorical inputfeature values, wherein at least one image region value is configured todepict a visual representation of textual data associated with acorresponding categorical input feature value that is associated withthe at least one image region value; and generating the imagerepresentation based at least in part on each image region valuecorresponding to the plurality of categorical input feature values. 13.The apparatus of claim 11, wherein: the plurality of image generationtechniques comprise a third image generation technique, and the thirdimage generation technique comprises: identifying a plurality ofcharacter patterns; generating, for each character pattern of theplurality of character patterns, a feature-based channel of a pluralityof feature-based channels, wherein: (i) each feature-based channelcomprises one or more feature-based channel region values, and (ii) eachfeature-based channel region value for a corresponding feature-basedchannel is associated with a corresponding categorical input featurevalue, and (iii) each feature-based channel region value for aparticular feature-based channel is determined based at least in part onwhether the corresponding categorical input feature value for thefeature-based channel region value comprises a corresponding characterpattern associated with the particular feature-based channel; andgenerating the image representation based at least in part on eachcorresponding feature-based channel of the plurality of coordinatechannels.
 14. The apparatus of claim 8, wherein the image representationis generated by merging each coordinate channel with one or morefeature-based channels.
 15. A non-transitory computer storage mediumcomprising instructions for generating an image-based representation ofon a plurality of categorical input feature values, the instructionsbeing configured to cause one or more processors to at least performoperations configured to: determine, for each categorical input featurevalue of the plurality of categorical input feature values, acorresponding coordinate grouping of a plurality of coordinategroupings, wherein the categorical input feature value comprises a textstring; generate, for each coordinate grouping of the plurality ofcoordinate groupings that is associated with a related subset of theplurality of categorical input feature values, a coordinate channel,wherein: (i) each coordinate channel is associated with a distinctcolor-based channel, (ii) each coordinate channel comprises one or morecoordinate region values each associated with a respective categoricalinput feature value in the related subset for the coordinate channel,and (iii) each coordinate region of a particular coordinate channeldepicts a textual representation of the respective categorical inputfeature value that is associated with the coordinate region using thedistinct color-based channel that is associated with the coordinategrouping; and generate the image representation of the plurality ofcategorical input feature values based at least in part on eachcoordinate channel, wherein the image representation: (i) represents amerged image representation obtained by merging a plurality ofcoordinate channels associated with the plurality of coordinategroupings, and (ii) comprises a plurality of distinct image regions,wherein each distinct image region is representative of a respectivecategorical input feature value that is associated with the distinctimage region.
 16. The non-transitory computer storage medium of claim15, further comprising processing the image representation using animage-based machine learning model to generate an image-basedprediction.
 17. The non-transitory computer storage medium of claim 16,wherein: the plurality of categorical input feature values comprise oneor more patient features associated with a patient, and the image-basedprediction is a health prediction for the patient.